package com.eduplatform.dto;

import lombok.Data;

import javax.validation.constraints.NotNull;

/**
 * 试卷题目关联数据传输对象
 */
@Data
public class PaperQuestionDTO {

    /**
     * 主键ID
     */
    private Long id;

    /**
     * 试卷ID
     */
    private Long paperId;

    /**
     * 题目ID
     */
    @NotNull(message = "题目不能为空")
    private Long questionId;

    /**
     * 分数
     */
    @NotNull(message = "分数不能为空")
    private Integer score;

    /**
     * 题号（在试卷中的顺序）
     */
    private Integer questionNumber;

    /**
     * 题型分组：1-单选题，2-多选题，3-判断题，4-填空题，5-简答题
     */
    private Integer questionType;

    /**
     * 题目内容
     */
    private String content;

    /**
     * 选项（JSON格式）
     */
    private String options;

    /**
     * 答案
     */
    private String answer;

    /**
     * 答案解析
     */
    private String analysis;

    /**
     * 获取题目类型名称
     */
    public String getQuestionTypeName() {
        if (questionType == null) {
            return "";
        }
        switch (questionType) {
            case 1:
                return "单选题";
            case 2:
                return "多选题";
            case 3:
                return "判断题";
            case 4:
                return "填空题";
            case 5:
                return "简答题";
            default:
                return "未知";
        }
    }
}